Type: concept
Confidence: 0.95
Created: 2026-04-17
Updated: 2026-04-17
Tags: 技术研究计算理论

NP 完全性

概述

NP 完全性(NP-completeness)是计算复杂度理论中的核心概念,由 Stephen Cook 于1971年定义。一个问题 L 是 NP 完全的,如果 L ∈ NP 且 NP 中所有问题都可以多项式时间归约到 L。

关键内容

定义

一个问题 L 是 NP 完全的,如果满足两个条件: 1. L ∈ NP(它属于 NP) 2. 对于所有 L' ∈ NP,L' ≤ₚ L(NP 中所有问题都可以多项式时间归约到它)

如果一个问题只满足条件(2)而不一定属于 NP,则称之为 NP 困难的(NP-hard)。

核心性质

"一荣俱荣、一损俱损": - 如果任何一个 NP 完全问题有多项式算法,则 P = NP,所有 NP 完全问题都有多项式算法 - 如果任何一个 NP 完全问题被证明没有多项式算法,则 P ≠ NP,所有 NP 完全问题都没有多项式算法

第一个 NP 完全问题

Cook-Levin 定理证明了布尔可满足性问题(SAT)是第一个 NP 完全问题。此后,Karp(1972)证明了21个经典组合问题都是 NP 完全的,今天已知有数千个 NP 完全问题。

实际意义

来源

相关